草庐IT

if 和 keyword 比较

全部标签

javascript - 比较引起消化的方法

很久以前看到过这篇文章:https://coderwall.com/p/ngisma它描述了一种方法,如果我们不在应用或摘要阶段,就会触发$apply。$scope.safeApply=function(fn){varphase=this.$root.$$phase;if(phase=='$apply'||phase=='$digest'){if(fn&&(typeof(fn)==='function')){fn();}}else{this.$apply(fn);}};Angular有$scope.$evalAsync方法(取自1.2.14):$evalAsync:function(e

javascript - 如果 'if' 条件为假,语句不在 chrome 中执行,但在 Firefox 中执行

Thisistheplnkrofmyscenario.当我在chrome中调试此代码时,不会执行第二个“if”中的语句。但是当我在Firefox中调试它时,会执行第二个“if”中的语句。angular.module('optionsExample',[]).controller('ExampleController',['$scope',function($scope){debugger;if(true){$scope.name='Foo';}if(false){$scope.name='lol';}}]);火狐版本:35.0.1Chrome版本:41.0.2272.101m为什么会这

javascript - `if __name__ == ' __main__ '` 相当于 javascript es6 模块

是否可以检查JavaScript文件是直接运行还是需要作为es6模块导入的一部分。例如包含一个主脚本。//main.jsimport'./other';if(mainTest){console.log('Thisshouldrun');}导入依赖项。//other.jsif(mainTest){console.log('Thisshouldneverrun');}包括应导致来自main.js的控制台消息但不是other.js。我找到了answertothisquestionwithregardstonode,但我特别对es6导入感兴趣 最佳答案

javascript - 比较 Flow 中的枚举值

我正在使用flow在我的代码中注释类型。typeBar='One'|'Two';functionfoo(b:Bar):boolean{returnb==='Three';}有什么方法可以教flow报告与不匹配类型(在我的例子中是string)比较的警告或错误?hereistheexamplefortest编辑:所以似乎不可能用枚举来完成。但是,由于这实际上是我遇到的一个错误,所以我想表达这一点,以便流程可以帮助我标记这种情况。有什么想法吗? 最佳答案 您可以使用格式(value:Type)。在你的情况下是:typeBar='One'

javascript - 将环境变量与常量进行比较时,字符串比较在 Javascript 中不起作用

我们有一个简单的React应用程序,使用CRA1.x创建。我们安装了dotenv以在项目上使用环境变量,我们的变量包含在.env和.env.development文件中,例如这个:.envREACT_APP_LOGGER=LOGGER.env.developmentREACT_APP_LOGGER=NO_LOGGER然后在代码中我们有这样的逻辑:if(process.env.REACT_APP_LOGGER==="LOGGER"){//dosomething}在development模式下使用webpack4进行本地构建时,if为真,而在production模式下为false。但在az

javascript - if(){do{};while();} 和 while{} 完全一样吗

是if(a){do{b();}while(a);}一模一样while(a){b();}? 最佳答案 它们是相同的,我将提供一个示例,您可能实际上想要使用“Do-While”而不是while循环。do{x=superMathClass.performComplicatedCalculation(3.14);}while(x相对于x=superMathClass.performComplicatedCalculation(3.14);while(x使用Do-While的参数如上所示。假设行x=superMathClass.perform

javascript - 无效分配左侧与三元 if

我想创建这样的样式表:varsheet=document.createElement('style');sheet.type='text/css';sheet.innerHTML=data.style;但是itseemsIE需要它自己的语法。简化thisanswer的代码,我试过了varsheet=document.createElement('style');sheet.type='text/css';(sheet.styleSheet?sheet.styleSheet.cssText:sheet.innerHTML)=data.style;但这会抛出ReferenceError:i

javascript - Chrome 扩展 : Storing variables for a tab even if page changes

我正在构建一个Chrome扩展程序。我想知道即使页面发生变化,是否有一种方法可以记住选项卡的js变量。例如。如果我在example1.com上并在同一个选项卡上转到example2.com,我应该保留在example1.com上设置的变量。我不想使用Chrome存储空间。我不能使用localStorage或sessionStorage,因为chrome对不同的域有不同的存储。这可以通过哪些方式实现? 最佳答案 除了使用localStorage(通过后台页面)之外,您还可以通过从内容脚本向后台页面发送消息,将这些变量直接保存在后台页面

javascript - 比较文件中的图像和从 Canvas 创建的图像

(我正在使用Protractor和Jasmine进行测试,我还在我的项目中包含了image-diff和node-canvas。)我需要比较两张图片并确保它们相同。一个保存在我的文件结构中,另一个是从Canvas创建的。我能够将Canvas转换为图像,还可以从文件中加载图像。这是我所拥有的:varimagediff=require('../node_modules/js-imagediff/js/imagediff.js');varCanvas=require('canvas');varfs=require('fs');varpath=require('path');beforeEach

javascript - 如何使用 SetInterval 函数和 'if' 使 div 弹出?

我有一个Whackamole游戏的脚本,但我似乎无法通过使用随机数生成器让我的div在我想要的时候弹出。这是我的代码:(顺便说一句,这是我制作的第一款游戏,所以这可能是个愚蠢的问题:))//minigamesetInterval(function(){varrandomnumber=1+Math.floor(Math.random()*10);if(randomnumber="1"){$('#mole1').show();};if(randomnumber='2'){$('#mole1').show();};if(randomnumber='3'){$('#mole1').show()